package com.nsgf.library.data.bean;

import com.nsgf.skjz.utils.StringUtil;

/**
 * 建筑物
 */
public class FacilityBean {

    /**
     * facilityCode : jzdb1848191506033283072
     * facilityName : 主坝
     * facilityType : build.type.1
     * typeName : 挡水建筑物
     */

    private String facilityCode;
    private String facilityName;
    private String facilityType;
    private String typeName;
    private String type;
    private int num;

    // 涵洞特有字段
    private String netHeight;     // 管道净高(m)
    private String netWidth;      // 管道净宽(m)
    private String internalDiameter;      // 管道内径(m)
    private String overflowCapacity;      // 涵洞过水能力(m³/s)
    private String length;      // 输水道长度(m)

    // 大坝特有字段
    private String damLevel;      // 大坝级别
    private String damLevelDesc;  // 大坝级别CN
    private String damCrestHeight; // 坝顶高程(m)
    private String damCrestWidth; // 坝顶宽度(mm)
    private String maxDamHeight; // 最大坝高(m)
    private String materialType;  //大坝材料类型
    private String materialTypeDesc;  //大坝材料类型CN
    private String structureType;  //大坝结构类型
    private String damTypeDesc;  //大坝结构类型CN
    private String foundationCharacter;  //地基
    private String damCrestTotalLength;  //坝顶总长度(m)
    private String imperviousType;  //坝基防渗型式


    // 溢洪道特有字段
    private String spillwayType;  // 型式
    private String spillwayTypeDesc;  // 型式CN
    private String altitude;  // 堰(槛)顶高程(m)
    private String topWidth;   // 溢流段长或堰顶宽(m)
    private String orifice;      // 孔口数量(个)
    private String gateType;      // 工作闸门型式
    private String gateTypeDesc;      // 工作闸门型式CN
    private String energyDissipation;      // 消能方式
    private String checkDischargeFlow;      // 设计泄洪流量(m³/s)
    private String designDischargeFlow;      // 校核泄洪流量(m³/s)
    private String category;      // 种类
    private String categoryDesc;      // 种类CN

    public String getNetHeight() {
        return StringUtil.isEmpty(netHeight) ? "--" : netHeight;
    }

    public void setNetHeight(String netHeight) {
        this.netHeight = netHeight;
    }

    public String getNetWidth() {
        return StringUtil.isEmpty(netWidth) ? "--" : netWidth;
    }

    public void setNetWidth(String netWidth) {
        this.netWidth = netWidth;
    }

    public String getInternalDiameter() {
        return internalDiameter;
    }

    public void setInternalDiameter(String internalDiameter) {
        this.internalDiameter = internalDiameter;
    }

    public String getOverflowCapacity() {
        return StringUtil.isEmpty(overflowCapacity) ? "--" : overflowCapacity;
    }

    public void setOverflowCapacity(String overflowCapacity) {
        this.overflowCapacity = overflowCapacity;
    }

    public String getLength() {
        return StringUtil.isEmpty(length) ? "--" : length;
    }

    public void setLength(String length) {
        this.length = length;
    }

    public String getDamLevel() {
        return StringUtil.isEmpty(damLevel) ? "--" : damLevel;
    }

    public void setDamLevel(String damLevel) {
        this.damLevel = damLevel;
    }

    public String getDamLevelDesc() {
        return StringUtil.isEmpty(damLevelDesc) ? "--" : damLevelDesc;
    }

    public void setDamLevelDesc(String damLevelDesc) {
        this.damLevelDesc = damLevelDesc;
    }


    public String getDamCrestHeight() {
        return StringUtil.isEmpty(damCrestHeight) ? "--" : damCrestHeight;
    }

    public void setDamCrestHeight(String damCrestHeight) {
        this.damCrestHeight = damCrestHeight;
    }

    public String getDamCrestWidth() {
        return StringUtil.isEmpty(damCrestWidth) ? "--" : damCrestWidth;
    }

    public void setDamCrestWidth(String damCrestWidth) {
        this.damCrestWidth = damCrestWidth;
    }

    public String getMaxDamHeight() {
        return StringUtil.isEmpty(maxDamHeight) ? "--" : maxDamHeight;
    }

    public void setMaxDamHeight(String maxDamHeight) {
        this.maxDamHeight = maxDamHeight;
    }

    public String getMaterialType() {
        return StringUtil.isEmpty(materialType) ? "--" : materialType;
    }

    public void setMaterialType(String materialType) {
        this.materialType = materialType;
    }

    public String getMaterialTypeDesc() {
        return StringUtil.isEmpty(materialTypeDesc) ? "--" : materialTypeDesc;
    }

    public void setMaterialTypeDesc(String materialTypeDesc) {
        this.materialTypeDesc = materialTypeDesc;
    }

    public String getStructureType() {
        return StringUtil.isEmpty(structureType) ? "--" : structureType;
    }

    public void setStructureType(String structureType) {
        this.structureType = structureType;
    }

    public String getDamTypeDesc() {
        return StringUtil.isEmpty(damTypeDesc) ? "--" : damTypeDesc;
    }

    public void setDamTypeDesc(String damTypeDesc) {
        this.damTypeDesc = damTypeDesc;
    }

    public String getFoundationCharacter() {
        return StringUtil.isEmpty(foundationCharacter) ? "--" : foundationCharacter;
    }

    public void setFoundationCharacter(String foundationCharacter) {
        this.foundationCharacter = foundationCharacter;
    }

    public String getDamCrestTotalLength() {
        return StringUtil.isEmpty(damCrestTotalLength) ? "--" : damCrestTotalLength;
    }

    public void setDamCrestTotalLength(String damCrestTotalLength) {
        this.damCrestTotalLength = damCrestTotalLength;
    }

    public String getImperviousType() {
        return StringUtil.isEmpty(imperviousType) ? "--" : imperviousType;
    }

    public void setImperviousType(String imperviousType) {
        this.imperviousType = imperviousType;
    }

    public String getSpillwayType() {
        return StringUtil.isEmpty(spillwayType) ? "--" : spillwayType;
    }

    public void setSpillwayType(String spillwayType) {
        this.spillwayType = spillwayType;
    }

    public String getSpillwayTypeDesc() {
        return StringUtil.isEmpty(spillwayTypeDesc) ? "--" : spillwayTypeDesc;
    }

    public void setSpillwayTypeDesc(String spillwayTypeDesc) {
        this.spillwayTypeDesc = spillwayTypeDesc;
    }

    public String getAltitude() {
        return StringUtil.isEmpty(altitude) ? "--" : altitude;
    }

    public void setAltitude(String altitude) {
        this.altitude = altitude;
    }

    public String getTopWidth() {
        return StringUtil.isEmpty(topWidth) ? "--" : topWidth;
    }

    public void setTopWidth(String topWidth) {
        this.topWidth = topWidth;
    }

    public String getOrifice() {
        return StringUtil.isEmpty(orifice) ? "--" : orifice;
    }

    public void setOrifice(String orifice) {
        this.orifice = orifice;
    }

    public String getGateType() {
        return StringUtil.isEmpty(gateType) ? "--" : gateType;
    }

    public void setGateType(String gateType) {
        this.gateType = gateType;
    }

    public String getGateTypeDesc() {
        return StringUtil.isEmpty(gateTypeDesc) ? "--" : gateTypeDesc;
    }

    public void setGateTypeDesc(String gateTypeDesc) {
        this.gateTypeDesc = gateTypeDesc;
    }

    public String getEnergyDissipation() {
        return StringUtil.isEmpty(energyDissipation) ? "--" : energyDissipation;
    }

    public String getEnergyDissipationSrc() {
        switch (getEnergyDissipation()) {
            case "energy.dissipation.1":
                return "底流消能";
            case "energy.dissipation.2":
                return "挑流消能";
            case "energy.dissipation.3":
                return "面流消能";
            case "energy.dissipation.4":
                return "消力戽消能";
            case "energy.dissipation.5":
                return "水垫消能";
            case "energy.dissipation.6":
                return "空中对冲消能";
            case "energy.dissipation.7":
                return "其他";
            default:
                return "";
        }
    }

    public void setEnergyDissipation(String energyDissipation) {
        this.energyDissipation = energyDissipation;
    }

    public String getCheckDischargeFlow() {
        return StringUtil.isEmpty(checkDischargeFlow) ? "--" : checkDischargeFlow;
    }

    public void setCheckDischargeFlow(String checkDischargeFlow) {
        this.checkDischargeFlow = checkDischargeFlow;
    }

    public String getDesignDischargeFlow() {
        return StringUtil.isEmpty(designDischargeFlow) ? "--" : designDischargeFlow;
    }

    public void setDesignDischargeFlow(String designDischargeFlow) {
        this.designDischargeFlow = designDischargeFlow;
    }

    public String getCategory() {
        return StringUtil.isEmpty(category) ? "--" : category;
    }

    public void setCategory(String category) {
        this.category = category;
    }

    public String getCategoryDesc() {
        return StringUtil.isEmpty(categoryDesc) ? "--" : categoryDesc;
    }

    public void setCategoryDesc(String categoryDesc) {
        this.categoryDesc = categoryDesc;
    }

    public String getFacilityCode() {
        return facilityCode;
    }

    public void setFacilityCode(String facilityCode) {
        this.facilityCode = facilityCode;
    }

    public String getFacilityName() {
        return facilityName;
    }

    public void setFacilityName(String facilityName) {
        this.facilityName = facilityName;
    }

    public String getFacilityType() {
        return facilityType;
    }

    public void setFacilityType(String facilityType) {
        this.facilityType = facilityType;
    }

    public String getTypeName() {
        return typeName;
    }

    public void setTypeName(String typeName) {
        this.typeName = typeName;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public int getNum() {
        return num;
    }

    public void setNum(int num) {
        this.num = num;
    }
}
